Tutorial Instalasi Aplikasi ERP dengan Odoo16 di Ubuntu Server 20.04

June 02, 2023
Muhammad Syukri

NOTE: Tulisan ini saya buat untuk dokumentasi dalam pengerjaan proyek aplikasi ERP di sebuah perusahaan di kawasan Tangerang. Agar saya gak lupa ketika ada proyek serupa saya langsung baca dari blog ini. Selain itu untuk berbagi pengalaman kepada siapa saja yang ingin mengembangkan aplikasi ERP dengan Odoo ini. Semoga bermanfaat ya. Adapun jika ada pertanyaan mengenai seputar tutorial bisa menghubungi saya ya, siapa tahu bisa berkolaborasi. Terimakasih!

Persyaratan Awal

  • VPS dengan OS Ubuntu Server 20.04
  • RAM dengan 2GB
  • Akses SSH dengan user root

Langkah 1. Perbaharui Sistem

Login ke VPS server anda dengan SSH:

ssh master@IP_Address -p Port_number 

Gantilah "master" dengan pengguna yang memiliki hak sudo atau root jika diperlukan. Selain itu, gantilah "IPAddress" dan "PortNumber" dengan alamat IP server dan nomor port SSH Anda.

Selanjutnya, pastikan bahwa kita menggunakan Ubuntu 20.04. Anda dapat memverifikasinya dengan perintah ini:

$ lsb_release -a 

Anda seharusnya mendapatkan output seperti ini:

No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.4 LTS
Release:	20.04
Codename:	focal

Kemudian, jalankan perintah berikut untuk memastikan bahwa semua paket yang terinstal di server diperbarui ke versi terbaru yang tersedia:

$ sudo apt update

Langkah 2. Buat User

Kami akan menginstal sebuah instansi Odoo 16 di bawah akun pengguna sistem. Oleh karena itu, kami perlu membuat akun sistem baru. Perintah di bawah ini digunakan untuk membuat pengguna dengan nama "odoo16".

$ sudo useradd -m -d /opt/odoo16 -U -r -s /bin/bash odoo16

Langkah 3. Menginstall Dependensi

Karena Odoo dibangun dengan menggunakan Python, kita perlu menginstal beberapa dependensi untuk melanjutkan proses instalasi Odoo 16 pada sistem Ubuntu 20.04 kita. Kita dapat menginstal dependensi tersebut dengan menjalankan perintah berikut ini.

$ sudo apt install build-essential wget git python3-pip python3-dev python3-venv python3-wheel libfreetype6-dev libxml2-dev libzip-dev libsasl2-dev python3-setuptools libjpeg-dev zlib1g-dev libpq-dev libxslt1-dev libldap2-dev libtiff5-dev libopenjp2-7-dev

Langkah 4. Menginstal PostgreSQL

Odoo hanya mendukung PostgreSQL untuk menyimpan data. Mari kita jalankan perintah di bawah ini untuk menginstal server PostgreSQL pada server Ubuntu 20.04 kita.

$ sudo apt install postgresql

Setelah proses instalasi selesai, kita dapat menambahkan pengguna postgresql baru untuk Odoo 16 kita; jalankan perintah ini:

$ sudo su - postgres -c "createuser -s odoo16"

Langkah 5. Menginstal Wkhtmltopdf

Untuk tujuan terkait pencetakan, Odoo 16 membutuhkan versi wkhtmltopdf yang lebih tinggi dari 0.12.2. Wkhtmltopdf adalah alat baris perintah sumber terbuka untuk merender data HTML menjadi format PDF menggunakan Qt webkit. Untuk menginstal wkhtmltopdf di server Ubuntu 22.04 Anda, ikuti langkah-langkah berikut.

$ sudo apt install wkhtmltopdf

Setelah terinstal, Anda dapat memeriksa versi wkhtmltopdf dengan menjalankan perintah berikut:

$ wkhtmltopdf --version

Anda akan melihat output seperti ini:

wkhtmltopdf 0.12.5

Langkah 6. Menginstal Odoo

Pada Ubuntu 20.04, kita dapat menginstal Odoo dari repositori default Ubuntu, tetapi ini akan menginstal Odoo versi 14. Dalam artikel ini, kita akan menginstal Odoo 16 di bawah lingkungan virtual Python. Kita telah membuat pengguna sistem sebelumnya dalam artikel ini; mari kita beralih ke pengguna sistem 'odoo16' dan kemudian menginstal Odoo dengan menggunakan nama pengguna tersebut.

$ sudo su - odoo16

Perintah di atas seharusnya membawa Anda ke direktori /opt/odoo16 dan masuk sebagai pengguna 'odoo16'. Sekarang, unduh Odoo dari Github.

$ git clone https://www.github.com/odoo/odoo --depth 1 --branch 16.0 odoo16

Jalankan perintah berikut untuk membuat lingkungan virtual Python baru.

$ python3 -m venv odoo16-venv

Lingkungan virtual sekarang terinstal; saatnya mengaktifkannya dengan menjalankan perintah ini.

$ source odoo16-venv/bin/activate

Setelah dieksekusi, prompt shell Anda akan terlihat seperti ini:

(odoo16-venv) odoo16@ubuntu22:~$

Selanjutnya, mari kita menginstal Odoo.

(odoo16-venv) odoo16@ubuntu22:~$ pip3 install wheel
(odoo16-venv) odoo16@ubuntu22:~$ pip3 install -r odoo16/requirements.txt

Setelah proses instalasi Odoo selesai, kita dapat membuat direktori baru untuk menyimpan add-on Odoo kustom kita.

(odoo16-venv) odoo16@ubuntu22:~$ deactivate
$ mkdir /opt/odoo16/odoo16/custom-addons

Sekarang, keluar dari pengguna 'odoo16' dan buat file konfigurasi Odoo.

$ exit
$ sudo nano /etc/odoo16.conf

Salin konten berikut ke dalam file tersebut.

[options]
admin_passwd = m0d1fyth15
db_host = False
db_port = False
db_user = odoo16
db_password = False
addons_path = /opt/odoo16/odoo16/addons,/opt/odoo16/odoo16/custom-addons
xmlrpc_port = 8069

Pastikan untuk memodifikasi nilai kunci m0d1fyth15 di atas dan gunakan kata sandi yang lebih kuat. Ini adalah kata sandi master Odoo Anda; Anda membutuhkannya untuk membuat atau menghapus database.

Langkah 7. Buat file Unit systemd Odoo

Pada langkah ini, kita akan membuat file unit systemd. Ini diperlukan untuk memulai/menghentikan/menghidupkan kembali Odoo.

$ sudo nano /etc/systemd/system/odoo16.service

Salin konten berikut ke dalam file unit systemd di atas.

[Unit]
Description=Odoo16
Requires=postgresql.service
After=network.target postgresql.service

[Service]
Type=simple
SyslogIdentifier=odoo16
PermissionsStartOnly=true
User=odoo16
Group=odoo16
ExecStart=/opt/odoo16/odoo16-venv/bin/python3 /opt/odoo16/odoo16/odoo-bin -c /etc/odoo16.conf
StandardOutput=journal+console

[Install]
WantedBy=multi-user.target

Itu dia. Sekarang kita dapat me-reload systemd dan menjalankan Odoo.

$ sudo systemctl daemon-reload
$ sudo systemctl start odoo16

Periksa apakah Odoo jalan dengan menjalankan perintah ini:

$ sudo systemctl status odoo16

Buka peramban web Anda dan arahkan ke http://YOUR_SERVER_IP_ADDRESS:8069; Anda akan melihat halaman Odoo.

ERP Odoo16

Contoh Modul Aplikasi ERP Odoo16

Contoh Aplikasi

Contoh Aplikasi Inventory Aplikasi Inventory